package com.hzvictory.hotel_system.service;

import com.hzvictory.hotel_system.pojo.dto.ChangePasswordDTO;
import com.hzvictory.hotel_system.pojo.dto.UserLoginDTO;
import com.hzvictory.hotel_system.pojo.entity.User;
import java.util.List;

/**
 * 功能
 * 作者：何征
 * 日期：2025/7/14 22:27
 */
public interface UserService {
    /**
     * 登录
     *
     * @param userLoginDTO 用户名，密码
     * @return 用户表
     */
    User login(UserLoginDTO userLoginDTO);
    /**
     * 查询用户表
     *
     * @param id 用户表主键
     * @return 用户表
     */
    public User selectUserById(Long id);

    /**
     * 查询用户表列表
     *
     * @param user 用户表
     * @return 用户表集合
     */
    public List<User> selectUserList(User user);

    /**
     * 新增用户表
     *
     * @param user 用户表
     * @return 结果
     */
    public int insertUser(User user);

    /**
     * 修改用户表
     *
     * @param user 用户表
     * @return 结果
     */
    public int updateUser(User user);
    /**
     * 修改密码
     *
     * @param changePasswordDTO 密码输入
     * @return 结果
     */
    public int ChangePassword(ChangePasswordDTO changePasswordDTO);
    /**
     * 批量删除用户表
     *
     * @param ids 需要删除的用户表主键集合
     * @return 结果
     */
    public int deleteUserByIds(Long[] ids);

    /**
     * 删除用户表信息
     *
     * @param id 用户表主键
     * @return 结果
     */
    public int deleteUserById(Long id);
}
